package xyz.lwm.lazycat.web.settings;

import lombok.Data;
import xyz.lwm.lazycat.annotation.SettingPrefix;

import java.util.List;

/**
 * <h3>反向代理设置</h3>
 * <pre>
 * 程序根据请求路径去匹配 route, 匹配优先级如下:
 * 1.精确路由 (无路径变量) >
 * 2.模糊路由 (有路径变量) >
 * 3.通用路由 (自定义功能, 如反向代理) >
 * 4.静态路由 (加载静态文件)
 *
 * 如果路由之间的匹配出现冲突, 会导致匹配错误, 如想进行代理操作, 结果调用了本地接口;
 * 所以业务上需要注意, 避免路由之间的冲突;
 * </pre>
 *
 * @author lwm
 */
@Data
@SettingPrefix(prefix = "server.proxy")
public class ProxySetting {

    // 是否运行反向代理 (true: 允许; 不开启则不生效代理功能)
    private boolean enable;

    // http 代理设置
    private List<ProxyHttpSetting> http;

}